Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Spain F17 Spain F18 Spain F19 Spain F22 Spain F23 Spain F26 Spain F27 Spain F34 Spain F35 Portugal F4 Portugal F5 Spain F38 Spain F39 Spain F40 Spain F41 Spain F5 Spain F6 Spain F8 Spain F9 Spain F10 Spain F13 Spain F18 Spain F19 Spain F20 Spain F30 Spain F31 Spain F34 Portugal F7 Portugal F8 Spain F39 Spain F40 Spain F41 Spain F42 United Arab Emirates F1 United Arab Emirates F2 Spain F3 Spain F4 Spain F5 Spain F7 Spain F10 Spain F11 Turkey F4 Turkey F5 Turkey F6 Spain F18 Spain F16 Spain F17 Spain F20 Spain F21 France F12 Spain F28 Spain F29 Spain F30 Portugal F4 Portugal F5 Spain F35 Spain F37 Spain F3 Spain F4 Italy F2 Italy F3 Spain F16 Spain F17 Spain F18 Spain F19 Spain F20 Italy F17 Spain F31 Spain F35 Spain F36 France F4 Spain F14 Spain F15 Spain F36 Spain F37 Spain F38 Spain F33 Spain F3 Spain F17 Czech Republic F10 Romania F11 Czech Republic F9 (Milovice) Czech Republic F10 (Ricany) Czech Republic F1 (Prague) Czech Republic F2 (Jablonec Nad Nisou) Czech Republic F3 (Most) Czech Republic F4 (Pardubice) Czech Republic F5 (Usti Nad Orlici) Slovakia F3 (Bratislava) Czech Republic F7 (Liberec) Czech Republic F8 (Opava) Czech Republic F9 (Valasske Mezirici) Czech Republic F10 (Milovice) Czech Republic F11 (Ricany) M15+H Bressuire M15 Veigy-Foncenex M25 Aktobe M25 Aktobe M15 Doha M15 Manama M15 Antalya M15 Antalya M15 Prague M25+H Most M15 Telfs M15 Kramsach M25+H Appiano M25 Stockholm M15 Liberec Romania F10 M25 Prague Spain F33 Kos Succhetti Tennis Cup - Cordenons Mamaia Challenger - Constanta Orbetello Challenger Seville Challenger Tarragona Challenger Rennes Challenger Tanger Challenger Rabat Challenger Leon Challenger Tallahassee Challenger Recanati Challenger Istanbul Challenger Manerbio Challenger Reggio Emilia Challenger Seville Challenger Izmir Challenger Tampere Challenger Sao Paulo Challenger Courmayeur Challenger Quimper Challenger Casablanca Challenger Furth Challenger Marburg Challenger Tampere Challenger San Marino Challenger San Sebastian Challenger Szczecin Challenger Kosice Challenger Eckental Challenger Kazan Challenger Meknes Challenger Casablanca Challenger Marrakech Challenger Mersin Challenger Milan Challenger Tampere Challenger Sibiu Challenger Cordenons Challenger Como Challenger Alphen Challenger Rio De Janeiro Challenger Bordeaux Challenger Furth Challenger Kosice Challenger Todi Challenger San Benedetto Challenger Poznan Challenger Guimaraes Challenger Rabat Challenger Kosice Challenger Trnava Challenger Heilbronn Challenger Ostrava Challenger Guangzhou Challenger Pingguo Challenger Nur-Sultan 1 Challenger Orleans Challenger Traralgon Challenger Cherbourg Challenger Phoenix Challenger Braunschweig Challenger Liberec Challenger Andria Challenger Quimper Challenger Braunschweig Challenger Segovia Challenger Oeiras 1 Challenger Oeiras 2 Challenger Meerbusch Challenger Trnava Challenger Madrid Challenger Grodzisk Mazowiecki Challenger Helsinki Challenger Bratislava 2 Challenger Orleans Challenger Girona Challenger Bratislava Challenger Prague 3 Challenger Cassis Challenger Eckental Challenger Bratislava Challenger Nur-Sultan 2 Challenger Liberec Challenger Nottingham 2 Challenger Mallorca Challenger Biel Challenger Ismaning Challenger Eckental Challenger Tenerife Challenger Helsinki Challenger Forli 5 Challenger Prague 1 Challenger Ismaning Challenger Cassis Challenger Mouilleron-Le-Captif Challenger Turin Challenger Vilnus Challenger Ortisei Challenger Bergamo Challenger Porto Challenger Phoenix Challenger Girona Challenger Sarasota Challenger Aix En Provence Challenger Cassis Challenger Mouilleron-Le-Captif Challenger Calgary Challenger 84° Concurso Internacional Tenis San Sebastian - San Sebastian Nur-Sultan Challenger Rennes Challenger Koblenz Challenger Prague Challenger Prague II Challenger Antalya 2 Challenger St. Brieuc Challenger Rennes Challenger Rome Challenger Mouilleron-Le-Captif Challenger Cremona Challenger Alicante Challenger Quimper Challenger Bergamo Challenger Estoril Open - Estoril San Juan Challenger Nottingham 1 Challenger Porto Alegre Challenger Montevideo Challenger Meknes Challenger Marrakech Challenger If Stockholm Open - Stockholm Open 13 - Marseille Open Sabadell Atlantico - Barcelona Estoril Open - Estoril Credit Agricole Suisse Open - Gstaad Aircel Chennai Open - Chennai Apia International - Sydney Brasil Open - Sao Paulo Copa Claro - Buenos Aires Abierto Mexicano Telcel - Acapulco Power Horse Cup - Dusseldorf Winston-Salem Open - Winston-Salem Malaysian Open - Kuala Lumpur Open Sud de France - Montpellier Rio Open 500 - Rio de Janeiro Abierto Mexicano Telcel - Acapulco Portugal Open - Oeiras Topshelf Open - 's-Hertogenbosch Vegeta Croatia Open - Umag China Open - Beijing Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Open 13 - Marseille Barcelona Open BancSabadell - Barcelona Geneva Open - Geneva St. Petersburg Open - St. Petersburg Millennium Estoril Open - Estoril Grand Prix Hassan II - Marrakech Millennium Estoril Open - Estoril SkiStar Swedish Open - Bastad Winston-Salem Open - Winston-Salem Tunis Challenger Erste Bank Open - Vienna ASB Classic - Auckland Gerry Weber Open - Halle SkiStar Swedish Open - Bastad Rio Open - Rio de Janeiro Geneva Open - Geneva Gerry Weber Open - Halle Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Rakuten Japan Open - Tokyo European Open - Antwerp ASB Classic - Auckland Grand Prix Hassan II - Marrakech Millennium Estoril Open - Estoril Gerry Weber Open - Halle Antalya Cup - Antalya ASB Classic - Auckland Geneva Open - Geneva SkiStar Swedish Open - Bastad Swiss Open - Gstaad Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu ASB Classic - Auckland Dubai Duty Free Tennis Championships - Dubai Estoril Open - Estoril Mercedes Cup - Stuttgart Sofia Open - Sofia Melbourne Summer Set - Melbourne Tata Open Maharashtra - Pune Qatar ExxonMobil Open - Doha Serbia Open - Belgrade Mallorca Championships - Mallorca Generali Open - Kitzbuhel Moselle Open - Metz Erste Bank Open - Vienna ASB Classic - Auckland Rio Open - Rio de Janeiro US Men's Clay Court Championship - Houston Libema Open - 's-Hertogenbosch European Open - Antwerp Murray River Open - Melbourne Turin Challenger Lisbon Challenger Swiss Open - Gstaad Sardegna Open - Cagliari Abierto Mexicano Telcel - Acapulco Gonet Geneva Open - Geneva Estoril Open - Estoril German Tennis Championships - Hamburg Erste Bank Open - Vienna Aircel Chennai Open - Chennai Heineken Open - Auckland Gerry Weber Open - Halle Studena Croatia Open - Umag Seville Challenger Dubai Duty Free Tennis Championships - Dubai Rome Challenger Topshelf Open - 's-Hertogenbosch Valencia Open - Valencia Open Parc - Lyon Apia International - Sydney Bordeaux Challenger Furth Challenger Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona Power Horse Cup - Dusseldorf Bet-at-home Open - Hamburg Winston-Salem Open - Winston-Salem Moselle Open - Metz Malaysian Open - Kuala Lumpur If Stockholm Open - Stockholm Cordoba Open - Cordoba Madrid Challenger Heineken Open - Auckland Dubai Duty Free Tennis Championships - Dubai Bratislava Challenger AEGON Championships - London Aegon Nottingham Open - Nottingham Vegeta Croatia Open - Umag Credit Agricole Suisse Open - Gstaad Winston-Salem Open - Winston-Salem Quimper Challenger Malaysian Open - Kuala Lumpur Rakuten Japan Open - Tokyo Kremlin Cup - Moscow Valencia Open - Valencia ASB Classic - Auckland Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Gonet Geneva Open - Geneva Dubai Duty Free Tennis Championships - Dubai Barcelona Open BancSabadell - Barcelona Open de Nice Cote d'Azur - Nice Gonet Geneva Open - Geneva Aegon Nottingham Open - Nottingham Konzum Croatia Open - Umag St. Petersburg Open - St. Petersburg Brest Challenger Rakuten Japan Open - Tokyo Argentina Open - Buenos Aires Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Konzum Croatia Open - Umag Suisse Open - Gstaad Garanti Koza Sofia Open - Sofia ABN AMRO World Tennis Tournament - Rotterdam Brasil Open - Sao Paulo Glasgow Challenger Chengdu Open - Chengdu China Open - Beijing Nur-Sultan Challenger Ostrava Challenger Oeiras 3 Challenger Parma Challenger Alicante Challenger Eckental Challenger Rio Open - Rio de Janeiro Prostejov Challenger Mallorca Challenger Millennium Estoril Open - Estoril Helsinki Challenger Adelaide International 2 - Adelaide Noventi Open - Halle Turkish Airlines Open Antalya - Antalya Open Parc - Lyon Liberec Challenger Tel Aviv Watergen Open - Tel Aviv Intrum Stockholm Open - Stockholm ABN AMRO World Tennis Tournament - Rotterdam Generali Open - Kitzbuhel Cordoba Open - Cordoba Argentina Open - Buenos Aires Chile Dove Men+Care Open - Santiago Abierto Mexicano Telcel - Acapulco Serbia Open - Belgrade Noventi Open - Halle Mallorca Championships - Mallorca Hall of Fame Open - Newport Erste Bank Open - Vienna Rakuten Japan Open - Tokyo Swiss Indoors Basel - Basel Open 13 Provence - Marseille Tunis Challenger Dubai Duty Free Tennis Championships - Dubai Vicenza Challenger Poznan Challenger Grand Prix Hassan II - Marrakech Millennium Estoril Open - Estoril Mercedes Cup - Stuttgart Noventi Open - Halle Nordea Open - Bastad Braga Challenger Hamburg European Open - Hamburg Winston-Salem Open - Winston-Salem Stockholm Open - Stockholm United Cup - Australia Argentina Open - Buenos Aires Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Chile Dove Men+Care Open - Santiago Millennium Estoril Open - Estoril Stockholm Open - Stockholm Brisbane International - Brisbane Japan Open Tennis Championships - Tokyo United Cup - Australia Terra Wortmann Open - Halle Ortisei Challenger Gijon Open - Gijon Ismaning Challenger Erste Bank Open - Vienna Drummondville Challenger Dubai Duty Free Tennis Championships - Dubai Millennium Estoril Open - Estoril Maia Challenger Terra Wortmann Open - Halle Western & Southern Open - Cincinnati Mutua Madrid Open - Madrid Valencia Open - Valencia Open 13 - Marseille Antalya Cup - Antalya Internazionali BNL d'Italia - Rome Plava Laguna Croatia Open - Umag Swiss Open - Gstaad Swiss Indoors Basel - Basel Argentina Open - Buenos Aires Brasil Open - Sao Paulo Barcelona Open Banc Sabadell - Barcelona Millennium Estoril Open - Estoril VTR Open - Vina del Mar Manama Challenger Prague Challenger Prague 1 Challenger Bratislava 1 Challenger Barcelona Open Banc Sabadell - Barcelona Liberec Challenger Ortisei Challenger Grodzisk Mazowiecki Challenger Cassis Challenger Ottignies-Louvain-la-Neuve Challenger Winston-Salem Open - Winston-Salem BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Estoril Open - Estoril Sony Open Tennis - Miami Internazionali BNL d'Italia - Rome Shanghai Rolex Masters - Shanghai Miami Open - Miami Mutua Madrid Open - Madrid Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Western & Southern Open - Cincinnati BNP Paribas Masters - Paris Copa Claro - Buenos Aires Miami Open - Miami Mutua Madrid Open - Madrid Open 13 Provence - Marseille Western & Southern Open - Cincinnati BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Western & Southern Open - New York Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Internazionali BNL d'Italia - Rome Monte-Carlo Rolex Masters - Monte-Carlo BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo National Bank Open - Montreal BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Shanghai Rolex Masters - Shanghai Qatar ExxonMobil Open - Doha Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Mutua Madrid Open - Madrid Shanghai Rolex Masters - Shanghai Kremlin Cup - Moscow BNP Paribas Masters - Paris Open 13 Provence - Marseille BNP Paribas Open - Indian Wells Miami Open - Miami Plava Laguna Croatia Open - Umag Almaty Open - Almaty Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Dallas Open - Dallas BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Mutua Madrid Open - Madrid Miami Open - Miami Rogers Cup - Toronto Western & Southern Open - Cincinnati BNP Paribas Open - Indian Wells Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Shanghai Rolex Masters - Shanghai Monte-Carlo Rolex Masters - Monte-Carlo Monte-Carlo Rolex Masters - Monte-Carlo BNP Paribas Masters - Paris Monte-Carlo Rolex Masters - Monte-Carlo National Bank Open - Montreal Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rolex Paris Masters - Paris Mutua Madrid Open - Madrid Western & Southern Open - Cincinnati National Bank Open - Toronto Rolex Paris Masters - Paris Australian Open - Melbourne Internazionali BNL d'Italia - Rome Cincinnati Open - Cincinnati St. Petersburg Open - St. Petersburg Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Wimbledon - London U.S. Open - New York U.S. Open - New York French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Chengdu Open - Chengdu European Open - Antwerp U.S. Open - New York Open Sud de France - Montpellier Australian Open - Melbourne U.S. Open - New York Wimbledon - London U.S. Open - New York Shenzhen Open - Shenzhen Swiss Indoors Basel - Basel French Open - Paris Australian Open Qualifying - Doha Australian Open - Melbourne Barcelona Open BancSabadell - Barcelona French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris Australian Open - Melbourne St. Petersburg Open - St. Petersburg Adelaide International - Adelaide Open Sud de France - Montpellier Australian Open - Melbourne French Open - Paris Wimbledon - London Davis Cup, Group I, 1R, POR-SVK 4-1 Davis Cup, Group I, 2R, ISR-POR 3-2 Davis Cup, Group I, PO, SVK-POR 3-1 Davis Cup, Group II, 1R, POR-BEN 5-0 Davis Cup, Group II, 3R, MDA-POR 2-3 Davis Cup, Group I, 1R, SLO-POR 3-2 Davis Cup, Group II, 1R, POR-MAR 4-1 Davis Cup, Group I, PO, POR-SLO 5-0 Davis Cup, Group I, 1R, POR-ISR 5-0 Davis Cup, Group I, 2R, POR-UKR 4-1 Australian Open - Melbourne Davis Cup, World Group, PO, POR-GER 2-3 Davis Cup, Group I, 2R, SWE-POR 3-2 Davis Cup, Group I, 1R, BLR-POR 3-2 Davis Cup, Finals, Group C Davis Cup, Qualifiers, 1R, ARG-CZE 4-0 Davis Cup, Group I, 1R, POR-BRA 3-1 French Open - Paris Australian Open - Melbourne U.S. Open - New York Wimbledon - London Australian Open - Melbourne Wimbledon - London French Open - Paris French Open - Paris Australian Open - Melbourne Internazionali BNL d'Italia - Rome Wimbledon - London Wimbledon - London U.S. Open - New York Wimbledon - London French Open - Paris Wimbledon - London U.S. Open - New York U.S. Open - New York Rogers Cup - Montreal Australian Open - Melbourne Rogers Cup - Toronto Australian Open (juniors) U.S. Open - New York All Lower level tournaments Olympics - Rio de Janeiro Olympics - Paris Wimbledon - London Iasi Challenger Miami Open - Miami Australian Open - Melbourne French Open - Paris Davis Cup, Group 2, 2R, POR-CYP 5-0 Davis Cup, Group 2, PO, ALG-POR 0-5 Davis Cup, Group I, PO, RUS-POR 4-1 Davis Cup, Group B, Valencia Davis Cup, World Group, PO, POR-CZE 1-3 Davis Cup, Group C, Valencia Davis Cup, Europe/Africa Group II, 2R, POR-CYP 5-0 Davis Cup, Europe/Africa Group II, 3R, POR-BIH 3-2 Davis Cup, Group I, 2R, SUI-POR 5-0 Davis Cup, Group 2, 1R, CYP-POR 3-2 Davis Cup, Group II, 2R, POR-FIN 4-1 Davis Cup, World Group I, PO, LTU-POR 0-4 Davis Cup, Group I, 1R, ROU-POR 3-1 Davis Cup, Group I, 1R, AUT-POR 1-3 Davis Cup, World Group, QF, CZE-AUS 1-2 Davis Cup, World Group, QR, KAZ-POR 3-1 Davis Cup, Group II, 3R, POR-BLR 3-2 Davis Cup, Group I, 1R, ISR-CZE 1-3 Davis Cup, Group I, PO, POR-POL 4-0 Davis Cup, World Group, Q, FIN-POR 3-1 Davis Cup, Group I, 1R, POR-AUT 1-4 Davis Cup, World Group, Q, CZE-KOR 4-0 Davis Cup, Group I, PO, UKR-POR 3-1 Olympics - Tokyo French Open (juniors) Wimbledon (juniors) U.S. Open (juniors) Japan Open Tennis Championships - Tokyo Davis Cup, Group I, PO, POR-RSA 4-0